Systems and methods for multi-factor location-based device verification

ABSTRACT

A system for multi-factor location-based device verification is configured to receive a first location factor, which may include GPS data, from a client device. The system is also configured to receive one or more additional location factors, such as a second location factor and/or a third location factor, from first and/or second wireless beacons, respectively. The wireless beacons may be located within a predefined area, such as a sports book or another casino area, and the system may determine, based upon the one or more location factors, whether the client device is within the predefined area. As a result, the location of the client device may be verified based upon one or more location factors. In addition, in response to verifying the location of the client device, a new wagering account may be established and/or wagering may be initiated.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of Patent Cooperation TreatyApplication No. US2021/055150, filed Oct. 15, 2021, which is a PCTApplication claiming priority to U.S. patent application Ser. No.17/073,971, filed Oct. 19, 2020, which issued as U.S. Pat. No.11,303,624 on Apr. 12, 2022, which is a continuation-in-part of andclaims the benefit of and priority to U.S. application Ser. No.15/632,789, filed on Jun. 26, 2017 and entitled SYSTEMS AND METHODS FORTWO-FACTOR LOCATION-BASED DEVICE VERIFICATION, which issued as U.S. Pat.No. 10,812,458 on Oct. 20, 2020, which is hereby incorporated byreference in its entirety.

BACKGROUND

The subject matter disclosed herein relates to systems and methods fordevice verification and, more particularly, to systems and methods formulti-factor location-based device verification, in which a physicallocation of a device, such as a mobile communications device within acasino sports book, is verified based upon a plurality of locationfactors.

Multi-factor authentication systems, such as two-factor authenticationsystems, have been developed to authenticate a user's identity, such as,for example, based upon at least two pieces of information. For example,a traditional two-factor authentication system may authenticate the userbased upon a password provided to the system by the user and a secondpiece of information known only to the user, such as a one-timeverification code, generated by the system and delivered to the user forthe purpose of authenticating the user to the system at the time theuser requests access. Such two-factor authentication processes have not,however, been implemented for verification purposes, such as, forexample, for the purpose of verifying the location of a user or of adevice of the user. Rather, as described herein, most conventionaltwo-factor systems are merely configured for the purpose ofauthenticating the identity of a user.

In addition, in the casino gaming industry, the proliferation of mobilecommunication devices, such as smartphones, has led to the developmentof technologies and systems for the implementation of casino games thatmay be played on mobile communications devices. To implement a casinogame on a mobile communications device, however, many gamingjurisdictions within the United States require some form of verificationthat the user of the mobile communications device is physically locatedon the casino property. To satisfy this requirement, some known systemsinclude a mobile communications device that is temporarily issued to auser by the casino. The presence of the user (as well as the mobilecommunications device) on the casino property is thus ensured by thecasino's control over, and ownership of, the mobile communicationsdevice.

Such conventional systems are deficient, however, in that many casinopatrons would prefer to play casino games, or to place wagers, fromtheir personal mobile communications devices (e.g., from their personalsmartphones). Traditionally, such systems have been difficult toimplement, particularly where it is necessary to ensure that the casinopatron is physically located within a particular casino property. Forexample, the verification processes implemented by many conventionallocation-based verification systems can be circumvented by users, suchas, for example, by spoofing a device location, such that the deviceappears to be located within a particular casino property irrespectiveof the actual device location.

In addition, at least some drawbacks associated with traditionallocation-based verification techniques are exacerbated undercircumstances that require more precise location-based verification of amobile communications device within a casino. For example, in order topermit a user to place wagers within a casino sports book from a mobilecommunications device, it may be necessary to verify that the user iswithin the casino itself and that the user is within the area of thesports book. Thus, under certain circumstances, a more preciseverification of a user's location within a casino may be necessary.

Systems and methods for more reliably verifying the physical location ofa mobile communications device are therefore desirable. Morespecifically, systems and methods for multi-factor verification of adevice location are desirable, particularly systems and methods capableof multi-factor verification of a physical location of a mobilecommunications device within a predetermined location, such as apredetermined location configured within software and pushed out to amobile application executing on the mobile communications device. Insome instances, such a predetermined location may include a sports bookof a casino.

BRIEF DESCRIPTION

In one aspect, a system for multi-factor location-based deviceverification is provided. The system includes a processor and anon-transitory, tangible, computer-readable storage medium havinginstructions stored thereon that, in response to execution by theprocessor, cause the processor to perform operations including: (i)receiving, from a client device of a user, a request to register for anew wagering account; (ii) receiving, from the client device, a firstlocation factor, the first location factor including global positioningsystem (GPS) data received from a source device located outside apredefined area, the first location factor being used to provide mapdirections to the predefined area; (iii) receiving, from the clientdevice, a second location factor, the second location factor includinginformation received from a first wireless beacon located within thepredefined area; (iv) receiving, from the client device, a thirdlocation factor, the third location factor including informationreceived from a second wireless beacon located within the predefinedarea; (v) determining, based at least upon the second location factorand the third location factor, that the client device is within thepredefined area; and (vi) creating, in response to the determining, thenew wagering account for the user of the client device.

In another aspect, a method for multi-factor location-based deviceverification is provided. The method includes: (i) receiving, from aclient device of a user, a request to register for a new wageringaccount; (ii) receiving, from the client device, a first locationfactor, the first location factor including global positioning system(GPS) data received from a source device located outside a predefinedarea; (iii) receiving, from the client device, a second location factor,the second location factor including information received from a firstwireless beacon located within the predefined area; (iv) receiving, fromthe client device, a third location factor, the third location factorincluding information received from a second wireless beacon locatedwithin the predefined area; (v) determining, based at least upon thesecond location factor and the third location factor, that the clientdevice is within the predefined area; and (vi) creating, in response tothe determining, the new wagering account for the user of the clientdevice.

In yet another aspect, an article of manufacture is provided. Thearticle of manufacture includes a tangible, non-transitory,computer-readable storage medium having instructions stored thereon,which when executed by a processor for multi-factor location-baseddevice verification, cause the processor to perform operationscomprising: (i) receiving, from a client device of a user, a request toregister for a new wagering account; (ii) receiving, from the clientdevice, a first location factor, the first location factor includingglobal positioning system (GPS) data received from a source devicelocated outside a predefined area; (iii) receiving, from the clientdevice, a second location factor, the second location factor includinginformation received from a first wireless beacon located within thepredefined area; (iv) receiving, from the client device, a thirdlocation factor, the third location factor including informationreceived from a second wireless beacon located within the predefinedarea; (v) determining, based at least upon the second location factorand the third location factor, that the client device is within thepredefined area; and (vi) creating, in response to the determining, thenew wagering account for the user of the client device.

BRIEF DESCRIPTION OF DRAWINGS

These and other features, aspects, and advantages of the presentdisclosure will become better understood when the following detaileddescription is read with reference to the accompanying drawings in whichlike characters represent like parts throughout the drawings, wherein:

FIG. 1 is a schematic view of an exemplary multi-factor location-baseddevice verification system;

FIG. 2 is a schematic view of an exemplary client device, such as theclient device shown in FIG. 1;

FIG. 3 is a schematic view of an exemplary server, such as one of theservers shown in FIG. 1;

FIG. 4 is a flowchart illustrating an exemplary process for multi-factorlocation-based device verification; and

FIG. 5 is an interaction diagram illustrating an exemplary process formulti-factor location-based device verification.

Unless otherwise indicated, the drawings provided herein are meant toillustrate features of embodiments of the disclosure. These features arebelieved to be applicable in a wide variety of systems comprising one ormore embodiments of the disclosure. As such, the drawings are not meantto include all conventional features known by those of ordinary skill inthe art to be required for the practice of the embodiments disclosedherein.

DETAILED DESCRIPTION

In the following specification and the claims, reference will be made toa number of terms, which shall be defined to have the followingmeanings.

The singular forms “a”, “an”, and “the” include plural references unlessthe context clearly dictates otherwise.

“Optional” or “optionally” means that the subsequently described eventor circumstance may or may not occur, and that the description includesinstances where the event occurs and instances where it does not.

Approximating language, as used herein throughout the specification andclaims, may be applied to modify any quantitative representation thatcould permissibly vary without resulting in a change in the basicfunction to which it is related. Accordingly, a value modified by a termor terms, such as “about” and “substantially”, are not to be limited tothe precise value specified. In at least some instances, theapproximating language may correspond to the precision of an instrumentfor measuring the value. Here and throughout the specification andclaims, range limitations may be combined and/or interchanged, suchranges are identified and include all the sub-ranges contained thereinunless context or language indicates otherwise.

As used herein, the terms “processor” and “computer” and related terms,e.g., “processing device,” “computing device”, and “controller” are notlimited to just those integrated circuits referred to in the art as acomputer, but broadly refers to a microcontroller, a microcomputer, aprogrammable logic controller (PLC), an application specific integratedcircuit, and other programmable circuits, and these terms are usedinterchangeably herein. In the embodiments described herein, memoryincludes, but is not limited to, a computer-readable medium, such as arandom access memory (RAM), and a computer-readable non-volatile medium,such as flash memory. Alternatively, a floppy disk, a compact disc-readonly memory (CD-ROM), a magneto-optical disk (MOD), and/or a digitalversatile disc (DVD) may also be used. Also, in the embodimentsdescribed herein, additional input channels may be, but are not limitedto, computer peripherals associated with a user interface such as amouse and a keyboard. Alternatively, other computer peripherals may alsobe used that may include, for example, but not be limited to, a scanner.Furthermore, in the exemplary embodiment, additional output channels mayinclude, but not be limited to, a user interface monitor.

Further, as used herein, the terms “software” and “firmware” areinterchangeable, and include any computer program stored in memory forexecution by personal computers, workstations, clients and servers.

As used herein, terms like “non-transitory computer-readable storagemedia” are intended to be representative of any tangible computer-baseddevice implemented in any method or technology for short-term andlong-term storage of information, such as, computer-readableinstructions, data structures, program modules and sub-modules, or otherdata in any device. Therefore, the methods described herein may beencoded as executable instructions embodied in a tangible,non-transitory, computer readable medium, including, without limitation,a storage device and/or a memory device. Such instructions, whenexecuted by a processor, cause the processor to perform at least aportion of the methods described herein. Moreover, as used herein, theterm “non-transitory computer-readable storage media” includes alltangible, computer-readable media, including, without limitation,non-transitory computer storage devices, including, without limitation,volatile and nonvolatile media, and removable and non-removable mediasuch as a firmware, physical and virtual storage, CD-ROMs, DVDs, and anyother digital source such as a network or the Internet, as well as yetto be developed digital means, with the sole exception being atransitory, propagating signal.

As used herein, a “location factor” or a “verification factor” mayinclude any data that may be used to determine a physical location of aclient device and/or any data that may be used in a process, asdescribed herein, for verifying a physical location of a device. Forexample, a location factor may include global positioning system (GPS)data and/or data broadcast by and/or received from a wireless beacon,such as an identifier (e.g., a universally unique identifier or UUID)broadcast by and/or received from a wireless beacon.

In addition, as used herein, a “first location factor” may, in somecases, refer to GPS data. Likewise, as used herein, a “second locationfactor” and/or a “third location factor” may, in some cases, refer todata broadcast by and/or received from a first wireless beacon and asecond wireless beacon, respectively. However, the ordinals, “first,”“second,” “third,” and so on should not be construed as limiting.Rather, where they occur, such ordinals are used merely for the purposeof distinguishing one location factor from another location factor.Further, although the examples described herein may incorporate first,second, and/or third components, such as first and second wirelessbeacons and first, second, and third location factors, it will beappreciated that any suitable number of wireless beacons may beimplemented in accordance with the present disclosure as well as thatany suitable number of location factors may be used to determine and/orverify a location of a client device.

Embodiments of the present disclosure relate to a multi-factorlocation-based device verification system. In some examples, two-factorsmay be used to verify a device location, such as GPS data and a wirelessbeacon data. In other embodiments, three or more factors may be used toverify a device location, such as GPS data and wireless beacon databroadcast by two or more wireless beacons and/or, in at least someembodiments, a device location may be verified indoors (e.g., within asports book) using two or more location factors received from wirelessbeacons positioned within the sports book.

The system thus facilitates multi-factor verification of a physicallocation of a client device, such as a mobile communications device,within a predetermined location, such as a casino sports book. Thesystem may ensure that the client device is physically located withinthe sports book based upon one or more of a first location orverification factor, such as at least one GPS coordinate, a secondlocation or verification factor, such as a unique identifier broadcastby and received from a wireless beacon disposed within the casino sportsbook, and/or a third location or verification factor, such as another(different) unique identifier broadcast by and received from a differentwireless beacon within the sports book. In various embodiments, and asdescribed herein, any suitable combination of these three locationfactors may be used.

The system may further register a user to a new wagering account basedupon a comparison of a self-photograph of a user of the client devicetaken from the client device to a driver's license photograph. In someembodiments, the system may permit the user to initiate a registrationprocess from a location that is outside of a sports book, but mayrequire that the user enter the sports book to complete the registrationprocess. In various embodiments, once a user has successfully registeredfor a wagering account, the user may be permitted by the system to placewagers on sporting events from within and/or from without the sportsbook.

FIG. 1 is a perspective view of an exemplary two-factor location-basedverification system 100. In the exemplary embodiment, system 100includes a client device 102, a first wireless beacon 104 a, a secondwireless beacon 104 b, a computer network 106, a web server 108, adatabase server 110, and/or a database 112. As described below, clientdevice 102 may be a mobile communications device, such as a smartphoneor a tablet. Accordingly, client device 102 may be transported by a userfrom location to location. However, as shown, and as described herein,during operation, client device 102 may be physically located within orphysically transported to an area of a sports book 114 within a casino116. As used herein, and for simplicity, first wireless beacon 104 a andsecond wireless beacon 104 b may be collectively referred to as wirelessbeacons 104 or wireless beacons 104 a-b.

Accordingly, in the exemplary embodiment, client device 102 may be anypersonal computing device and/or any mobile communications device of auser, such as a personal computer, a tablet computer, a smartphone, andthe like. Client device 102 may be configured to present an application(e.g., a smartphone “app”) or a webpage, such as webpage or an app forauthenticating a user to system 100 and/or an a webpage or app forregistering for account access. To this end, client device 102 mayinclude or execute software for viewing and interacting with a webpageand/or an app.

Wireless beacons 104 a and 104 b may be located within casino 116 and/orwithin sports book 114 and may be any suitable electronic device capableof wirelessly transmitting and/or receiving data via one or morecommunications protocols. In the exemplary embodiment, wireless beacons104 a and 104 b are located within sports book 114. For example, in someembodiments, wireless beacons 104 a-b may be configured to transmitand/or receive a low energy BLUETOOTH signal and/or a WiFi signal. Moreparticularly, in some embodiments, wireless beacons 104 a-b includeAPPLE iBEACON and/or a GOOGLE EDDYSTONE beacons. Wireless beacons 104a-b may, in addition, be configured to transmit location factors, suchas universally unique identifiers (or UUIDs), which may include, in someembodiments, rotating combinations of hexadecimal digits. These locationfactors may uniquely identify wireless beacons 104 a-b, and to transmitthe location factors, wireless beacons 104 a-b may communicate with abackend server, such as web server 108, which may provide the locationfactors (e.g., rotating UUIDs) to wireless beacons 104 a-b forbroadcast.

The location factors broadcast by wireless beacons 104 a-b may bereceived by client device 102 and used, as described herein, for thepurpose of verifying that client device 102 is physically located withinsports book 114. In addition, in some embodiments, wireless beacons 104a-b may independently generate location factors, in which case, wirelessbeacons 104 a-b may provide the independently generated location factorsto web server 108 at substantially the same time that they are broadcastfor reception by client device 102. Accordingly, location factors may begenerated by web server 108 and/or by wireless beacons 104 a-bthemselves.

Network 106 may be any electronic communications system, such as anycomputer network or collection of computer networks, and may incorporatevarious hardware and/or software. Communication over network 106 may beaccomplished via any suitable communication channels, such as, forexample, one or more telephone networks, one or more extranets, one ormore intranets, the Internet, one or more point of interaction devices(e.g., point of sale devices, smart phones, cellular phones), one ormore electronic gaming machines, such as one or more electronic gamingmachines located within casino 116, various online and/or offlinecommunications systems, such as various local area and wide areanetworks, and the like.

Web server 108 may be any computer or computer system that is configuredto receive and process requests made via HTTP. Web server 108 may becoupled between client device 102 and database server 110. Moreparticularly, web server 108 may be communicatively coupled to clientdevice 102 via network 106. In various embodiments, web server 108 maybe directly coupled to database server 110 and/or communicativelycoupled to database server 110 via a network, such as network 106. Insome embodiments, communications between web server 108 and clientdevice 102 may be implemented by way of a secure encrypted connectionand/or communications protocol, such as an HTTPS connection and/or anyother secure encrypted connection and/or communications protocol. Webserver 108 may, in addition, function to store, process, and/or deliverone or more web pages and/or any other suitable content to client device102. Web server 108 may, in addition, receive data, such as dataprovided to the app and/or webpage (as described herein) from clientdevice 102 for subsequent transmission to database server 110.

In various embodiments, web server 108 may implement various hardwareand/or software, such as, for example, one or more communicationprotocols, one or more message brokers, one or more data processingengines, one or more servlets, one or more application servers, and thelike. For instance, in various embodiments, web server 108 may implementa message broker program module configured to translate a message orcommunications from a messaging protocol of a sending device to amessaging protocol of a receiving device (e.g., RABBITTMQ, KAFKA,ACTIVEMQ, KESTREL). Further still, in some embodiments, web server 108may implement a data processing engine, such as a cluster computingframework like APACHE SPARK. In addition, in various embodiments, webserver 108 may implement servlet and/or JSP server, such as APACHETOMCAT. In some embodiments, web server 108 may function to process datareceived from client device 102, such as authentication and/or locationverification data, which may include, for example, a first locationfactor (e.g., GPS data), and/or second and/or third location factors(e.g., wireless beacon data).

Database server 110 may be any computer or computer program thatprovides database services to one or more other computers or computerprograms. In various embodiments, database server 110 may becommunicatively coupled between web server 108 and database 112.Database server 110 may, in addition, function to process data receivedfrom web server 108, such as authentication and/or location verificationdata, which may include, for example, a first location factor (e.g., GPSdata) and/or one or more location factors (e.g., wireless beacon data).

Database 112 may be any organized collection of data, such as, forexample, any data organized as part of a relational data structure, anydata organized as part of a flat file, and the like. Database 112 may becommunicatively coupled to database server 110 and may receive datafrom, and provide data to, database server 110, such as in response toone or more requests for data, which may be provided via a databasemanagement system (DBMS) implemented on database server 110. In variousembodiments, database 112 may be a non-relational database, such as anAPACHE HADOOP database.

Although components of system 100 are described below and depicted atFIG. 1 as being interconnected in a particular configuration, it iscontemplated that the systems, subsystems, hardware and softwarecomponents, various network components, and database systems describedherein may be variously configured and interconnected and maycommunicate with one another within system 100 to facilitate theprocesses and advantages described herein. For example, although twowireless beacons 104 a-b, a single web server 108, a single databaseserver 110, and a single database 112 are described above, it will beappreciated that system 100 may include any suitable number ofinterconnected, communicatively coupled, wireless beacons, web servers,database servers, and/or databases. For example, a predefined area, asdescribed herein (e.g., a sports book) may include a plurality ofwireless beacons 104, such as, for example, depending upon a wirelessrange of the wireless beacons 104 being used and a square footage of thesports book, the number of wireless beacons 104 being selected in thisexample to ensure that a client device 102 anywhere within the sportsbook is within wireless range of at least one (and in some cases morethan one) wireless beacon 104 a-b. Further, although certain functions,processes, and operations are described herein with respect to one ormore system components, it is contemplated that one or more other systemcomponents may perform the functions, processes, and operationsdescribed herein.

FIG. 2 is a schematic view of an exemplary client device 202, such as,for example, client device 102 (shown in FIG. 1). Accordingly, invarious embodiments, client device 202 may be operated by a user 201.Client device 202 may include a processor 205 for executinginstructions. In some embodiments, executable instructions may be storedin a memory area 210. Processor 205 may include one or more processingunits (e.g., in a multi-core configuration). Memory area 210 may be anydevice allowing information such as executable instructions and/ortransaction data to be stored and retrieved. Memory area 210 may includeone or more computer readable media.

Client device 202 may also include at least one media output component215 for presenting information to user 201. Media output component 215may be any component capable of conveying information to user 201. Insome embodiments, media output component 215 may include an outputadapter (not shown) such as a video adapter and/or an audio adapter. Anoutput adapter may be operatively coupled to processor 205 and adaptedto operatively couple to an output device such as a display device(e.g., a cathode ray tube (CRT), liquid crystal display (LCD), lightemitting diode (LED) display, or “electronic ink” display) or an audiooutput device (e.g., a speaker or headphones).

In some embodiments, media output component 215 may be configured topresent a graphical user interface (e.g., a web browser and/or a clientapplication) to user 201. A graphical user interface may include, forexample, an online store interface for viewing and/or purchasing items,and/or a wallet application for managing payment information. In someembodiments, client device 202 may include an input device 220 forreceiving input from user 201. User 201 may use input device 220 to,without limitation, select and/or enter data, such as, for example, oneor more report criteria or report filters.

Input device 220 may include, for example, a keyboard, a pointingdevice, a mouse, a stylus, a touch sensitive panel (e.g., a touch pad ora touch screen), a gyroscope, an accelerometer, a position detector, abiometric input device, and/or an audio input device. A single componentsuch as a touch screen may function as both an output device of mediaoutput component 215 and input device 220.

Client device 202 may also include a communication interface 225,communicatively coupled via network 106 to web server 108 and/ordatabase server 110 (shown in FIG. 1). Communication interface 225 mayinclude, for example, a wired or wireless network adapter and/or awireless data transceiver for use with a mobile telecommunicationsnetwork. In some embodiments, communication interface 225 may beconfigured to communicate with and/or receive data, such as one or morelocation factors, from one or more wireless beacons 104 a-104 b. Moregenerally, however, any suitable communication interface, such as anysuitable radio frequency, Wi-Fi, or BLUETOOTH transceiver and/or receivemay be included to communicate or receive communications from wirelessbeacons 104 a-104 b.

Stored in memory area 210 are, for example, computer readableinstructions for providing a user interface to user 201 via media outputcomponent 215 and, optionally, receiving and processing input from inputdevice 220. A user interface may include, among other possibilities, aweb browser and/or a client application. Web browsers enable users, suchas user 201, to display and interact with media and other informationtypically embedded on a web page or a website.

In some embodiments, client device 202 may include a global positioningsystem (GPS) receiver 230 communicatively coupled to processor 205. GPSreceiver 230 may include any suitable GPS receiver that may beimplemented within client device 202 and that may be configured toreceive GPS data, such as one or more GPS coordinates, from one or moreGPS satellites. In some embodiments, GPS receiver 230 may alsocommunicate with one or more cellular system towers to triangulate orotherwise obtain a physical location of client device 202.

FIG. 3 is a schematic view of an exemplary server computer device 301,such as, for example, either of web server 108 and/or database server110 (shown in FIG. 1). Accordingly, server computer device 301 mayinclude a processor 305 for executing instructions. Instructions may bestored in a memory area 310. Processor 305 may include one or moreprocessing units (e.g., in a multi-core configuration).

Processor 305 may be operatively coupled to a communication interface315 such that server computer device 301 is capable of communicatingwith a remote computing device, as described above. For example,communication interface 315 may receive requests from client device 202via the Internet and/or over a computer network.

Processor 305 may also be operatively coupled to a storage device 334(e.g., database 112). Storage device 334 may be any computer-operatedhardware suitable for storing and/or retrieving data, such as, but notlimited to, data associated with database 320. In some embodiments,storage device 334 may be integrated in server computer device 301. Forexample, server computer device 301 may include one or more hard diskdrives as storage device 334.

In other embodiments, storage device 334 may be external to servercomputer device 301 and may be accessed by a plurality of servercomputer devices 301. For example, storage device 334 may include astorage area network (SAN), a network attached storage (NAS) system,and/or multiple storage units such as hard disks and/or solid statedisks in a redundant array of inexpensive disks (RAID) configuration.

In some embodiments, processor 305 may be operatively coupled to storagedevice 334 via a storage interface 320. Storage interface 320 may be anycomponent capable of providing processor 305 with access to storagedevice 334. Storage interface 320 may include, for example, an AdvancedTechnology Attachment (ATA) adapter, a Serial ATA (SATA) adapter, aSmall Computer System Interface (SCSI) adapter, a RAID controller, a SANadapter, a network adapter, and/or any component providing processor 305with access to storage device 334.

FIG. 4 is a flowchart illustrating an exemplary process 400 formulti-factor location-based device verification. As described herein,multi-factor location-based device verification may include two-factorverification as well as three-factor verification, and in someembodiments, greater than three factors may be used to verify devicelocation. Accordingly, in the exemplary embodiment, web server 108 mayreceive a registration request from client device 102, such as, forexample, in the case that a user of client device 102 wishes to place awager on an outcome of a sporting event within sports book 114 (step402).

In some embodiments, web server 108 may provide a link to a registrationwebpage, which the user may interact with to register for a new wageringaccount. In another embodiment, the user may open an application (or“mobile app”) on client device 102 to begin registration. The user mayalso be prompted to use client device 102 to enter personal informationand/or scan or photograph the user's driver's license, such that clientdevice 102 acquires an image of the user's driver's license photograph(step 404). The user may also, in some embodiments, be prompted to entera variety of other personally identifying information, such as, forexample, a social security number, a telephone number associated withclient device 102, an email address, and/or a password associated with anew wagering account (step 404). However, as described below, this datamay be collected during any phase of process 400. In variousembodiments, a user may initiate such a registration process from anyphysical location, such as, for example, from a location that is outsideof sports book 114. However, as described herein, to complete theregistration process, in the exemplary embodiment, the user may berequired to enter or physically travel to the physical location ofsports book 114. Thus, the user may, in some embodiments, provide animage of the user's driver's license photograph and/or other personallyidentifying information from a location that is outside of sports book114.

In addition, in some embodiments, irrespective of whether web server 108has received the data described above, web server 108 may receive afirst location factor, such as at least one GPS coordinate, associatedwith client device 102 (step 406). In response, web server 108 mayidentify at least one predefined physical location, such as sports book114, within a predefined distance of client device 102 (step 408). Asdescribed herein, the predefined physical location may be any suitablepredefined physical location, which may be configured and/or storedwithin software executing on client device 102 and/or pushed to a mobileapplication executing on client device 102. Thus, although process 400is described with reference to sports book 114, in various embodiments,any suitable predefined physical location may be selected or utilizedduring an account registration process. Further, in one embodiment, webserver 108 may prompt the user for the driver's license scan and/orother personally identifying information prior to identification ofsports book 114.

Having identified at least one sports book 114 within a predefined rangeor physical distance of client device 102, web server 108 may provide amessage to client device 102 indicating the physical location (e.g., thestreet address and/or a map including a pin drop) of sports book 114(step 410). In some embodiments, as described herein, the user mayreceive an ordered list of predefined locations. The user may receiveand/or view the location of sports book 114 and, in response, travel tosports book 114. In some embodiments or circumstances, such as, forexample, when the user is already very near sports book 114 and/or onthe premises of sports book 114, web server 108 may omit the stepsdescribed herein that direct the user to sports book 114. Likewise, theuser may select an option in the mobile app to indicate that the userhas arrived at sports book 114.

Web server 108 may, in various embodiments, standby as the user travelsto sports book 114. Once the user has arrived at the physical locationof sports book 114, however, web server 108 may receive one or moreadditional location factors, such as a second location factor and/or athird location factor, from client device 102 (step 412). In someembodiments, as described herein, client device may receive locationfactors (e.g., beacon identifiers) from web server 108. As a result, invarious embodiments, either client device 102 or web server 108 mayverify one or more beacon identifiers. Stated another way, and asdescribed herein, beacon verification may be performed on a front end ofsystem 100 (e.g., by client device 102), on a backend of system 100(e.g., by web server 108), and/or a combination of both.

As described herein, the second location factor may include a uniqueidentifier that is received by client device 102 from first wirelessbeacon 104 a. Likewise, the third location factor may include a uniqueidentifier that is received by client device 102 from second wirelessbeacon 104 b. The third location factor may be different from the secondlocation factor for added security (and, e.g., because, as describedabove, location factors may rotate or change over time and includeunique and/or randomly generated alphanumeric or hexadecimal digits). Insome embodiments, client device 102 may “pair” with wireless beacons 104a-b. However, in other embodiments, client device 102 may simply receivethe second and/or third location factors (or a plurality of temporallyrotating second and/or third location factors, as described herein) fromwireless beacons 104 a-b.

In response to receipt of the second and/or third location factors, webserver 108 and/or, in some cases, client device 102, may analyze any ofthe first location factor, the second location factor, and/or the thirdlocation factor to verify that client device 102 is in fact physicallylocated within sports book 114 (step 414). For example, web server 108may verify that client device 102 is physically located within sportsbook 114 based upon the combination of location factors of the GPSsignal (e.g., the first location factor) received from client device 102within sports book 114 and the unique identifier broadcast by wirelessbeacon 104 a (e.g., the second location factor) received from clientdevice 102. Similarly, in at least some embodiments, web server 108 mayverify that client device 102 is physically located within sports book114 based upon the combination of location factors of the GPS signal(e.g., the first location factor) received from client device 102 withinsports book 114, the unique identifier broadcast by wireless beacon 104a (e.g., the second location factor) received from client device 102,and the unique identifier broadcast by wireless beacon 104 b (e.g., thethird location factor) received from client device 102.

In yet another embodiment, GPS data (e.g., the first location factor)may only be used to determine that the user is outside of sports book114 and to map the location of one or more predefined locations, such assports book 114, for the user, as described, while the second and/orthird location factors (received from wireless beacons within the sportsbook) may be used to determine or verify that the user is within sportsbook 114. For example, in some embodiments, the second and/or thirdlocation factors received from wireless beacons 104 a and 104 b,respectively, may be used to determine that the user is within sportsbook 114 by triangulating or otherwise determining an indoor position ofthe user within sports book 114, while the first location factor, whichincludes GPS data, may only be used to determine an outdoor location ofthe user prior to entry by the user within sports book 114. However, inat least some embodiments, the first location factor may also be used todetermine or verify an indoor location (e.g., in conjunction with one ormore wireless beacon signals) of the user, or the first location factormay be used as a standalone data point for determining the location ofthe user.

In some embodiments, the use of at least two location factors from atleast two wireless beacons also allows determining an actual location ofclient device 102 within sports book 114, such as, for example, bytriangulating the location of the client device 102 relative to aplurality of wireless beacons 104 a-b and/or simply confirming thatclient device 102 is within range of the at least two beacons 104 a-b.In some embodiments, one or more wireless beacons 104 a-b may also bepositioned near one or more edges, such as one or more entrances and/orexits, to detect ingress and/or egress by users as they enter and exitsports book 114.

Accordingly, in some embodiments, web server 108 may compare thereceived GPS coordinates to the GPS coordinates associated with sportsbook 114 (which may be stored by system 100) to determine the locationof client device 102. Similarly, to complete the multi-factorlocation-based verification process, web server 108 may compare one ormore unique identifiers received from client device 102 to the one ormore unique identifiers generated by web server 108 and provided (asdescribed above) to wireless beacons 104 a-b (e.g., second and thirdlocation factors). If, in at least one embodiment, the GPS coordinatesreceived from client device 102 match the GPS coordinates associatedwith sports book 114 (and/or casino 116, in the case that the GPScoordinates are not insufficiently specific to identify sports book 114)and at least one unique identifier received from client device 102matches at least one unique identifier generated and stored by webserver 108 (and/or database server 110), web server 108 and/or databaseserver 110 may reliably verify that client device 102 is in factphysically located within sports book 114. In addition, as describedherein, in at least some embodiments, client device 102 may perform thebeacon identifier verification process. For example, client device 102may receive beacon identifiers from web server 108 and compare thesebeacon identifiers to beacon identifiers received wirelessly fromwireless beacons 1045 a-b within sports book 114.

In another embodiment, if at least two unique identifiers (e.g., atleast two location factors received from wireless beacons 104, such asthe second and third location factors) received from client device 102match the corresponding location factors stored by web server 108, webserver 108 (and/or client device 102) may verify that client device 102is within sports book 114; in this embodiment, GPS data may be used, asdescribed herein, for the purpose of determining that the user isoutside of sports book 114 and/or guiding the user to sports book 114,such as by providing map directions to client device 102.

Accordingly, in various embodiments, if one or both of the GPScoordinates and/or the unique identifiers provided by wireless beacons104 a-b do not match their respective counterparts, a determination maybe made that client device 102 is not located within sports book 114 (aswell as an outdoor or external location of client device 102), in whichcase a message may be provided to and/or displayed by client device 102instructing the user to travel to the location of sports book 114 and/orindicating the physical location of sports book 114 (step 410). In someembodiments, if the user does not travel to the location of sports book114 within a predetermined period of time, web server 108 may time theregistration request out and process 400 may terminate.

However, in the case that web server 108 is able to verify the physicallocation of client device 102 within sports book 114, web server 108(and/or client device 102) may prompt the user to use client device 102to take a self-photograph of the user, such as a photograph of theuser's face (e.g., a “selfie”) for the purpose of authenticating theuser's identity. The user may, in response, use client device 102 toacquire the self-photograph, and client device 102 may transmit theself-photograph to web server 108. In response to receiving theself-photograph, web server 108 (and in some cases another backendsystem, such as database server 110) may determine whether theself-photograph matches a photograph of the user included in thephotograph of the user's driver's license (described above) (steps 416and 418).

In addition, in some embodiments, web server 108 and/or client device102 may re-verify the location of client device 102, as described above,in response to receiving the self-photograph. For example, in someembodiments, web server 108 may request and/or receive a second orfollow up first location or verification factor and a second or followup second location or verification factor, such as a second set of GPScoordinates and/or one or more additional unique identifiers receivedfrom wireless beacons 104 a-b. Web server 108 may thus re-verify, priorto registering the user for a new wagering account, that the user hasnot departed sports book 114.

Web server 108 (or another backend system) may implement a facialrecognition algorithm and/or a computer vision algorithm to determinewhether the photograph in the user's driver's license matches theself-photograph taken by the user from client device 102. In someembodiments, the driver's license photograph and the self-photograph maybe transmitted to a backend display, such as a display located withincasino 116 or sports book 114 back office or cage, where a humanoperator may view both photographs for analysis and comparison. Thus, insome embodiments, the user's identity may be authenticated or verifiedby a computer system, such as web server 108, while in otherembodiments, a human operator may perform the authentication. Further,in some embodiments, the authentication of the user may be performed byboth of a computer system and a human operator, such as, for example,for the purpose of redundancy or added security.

Irrespective of the method by which the user's identity isauthenticated, if the self-photograph matches the photograph displayedon the driver's license, web server 108 and/or database server 110 maygenerate or create a new wagering account for the user, whereupon theuser may login to the wagering account to begin placing wagers onsporting events (step 420). For instance, once the user is logged in toa newly created/existing wagering account, and the location of clientdevice 102 is verified as being within a particular gaming jurisdiction(e.g., within a particular state within the United States), web server108 may grant the user access to the newly created/existing wageringaccount, whereupon the user may proceed to place one or more wagers onone or more sporting events in conjunction with sports book 114. Forexample, client device 102 may communicate with web server 108 to placewagers and receive wager outcomes in association with various sportingevents. In addition, one or more awards, such as one or more monetaryawards or credits associated with one or more monetary awards, may beprovided to the user via client device 102 (e.g., in the instance thatthe user places a wager on a sporting event that is associated with awinning outcome).

FIG. 5 is an interaction diagram illustrating an exemplary process formulti-factor location-based device verification. In the exemplaryembodiment, and as described herein, a user may open a mobile app, suchas on client device 102, enter identifying information, such as a legalname, a user name, an address, a password, and the like, and/or take oneor more pictures or photographs of their driver's license (e.g., thefront, the back, or both the front and back of their driver's license)(step 502). In some embodiments, the mobile app may direct the user to aregistration webpage. In other embodiments, the mobile app may provide aregistration interface on a display of client device 102.

In the example embodiment, client device 102 receives one or more GPScoordinates of client device 102, as described herein, as well as beaconinformation associated with one or more beacons, from a backend server,such as web server 108 (e.g., a locations API running on web server 108)(step 504). In addition, client device 102 may receive an array ofpredefined signup locations, e.g., sports books, such as sports book114, which may be ordered and/or presented on client device 102 in alist arranged by distance from the user's current GPS location. In atleast some embodiments, the beacon information received by client device102 from web server 108 may include a beacon identifier (or beaconidentifiers) for each beacon within each sports book in the list ofsports books returned by web server 108 and displayed on the user'sclient device 102. In some embodiments, web server 108 may provideinformation to client device 102 for the beacons 104 a-b inside thesports book 114 selected by the user. As a result, when the user entersany of the sports books provided on the list, client device 102 mayalready store beacon information for verifying that the user isphysically within the sports book 114. In some embodiments, asdescribed, client device 102 may receive periodic updates of beaconidentifier information, such as each time a beacon identifier rotates orchanges to a new beacon identifier. In this manner, client device 102may obtain and store an up-to-date list of beacon identifiers.

In response to arriving at sports book 114, in at least someembodiments, the user may interact with the mobile app on client device102 to indicate that the user has arrived at sports book 114, such as byselecting an “I'm here” option displayed or provided by the mobile app,and in response, the user's location within sports book 114 may beverified using one or more beacon identifiers, as described herein (step506). For example, in at least some embodiments, client device 102 maydetect wireless beacon signals of wireless beacons 104 a and 104 bwithin sports book 114. In response to detecting the wireless beaconsignals, client device 102 may, in addition, compare the beaconidentifiers provided by each beacon 104 a-b with beacon identifiersprovided by or received from web server 108 for each of the wirelessbeacons 104 a-b, and if the identifiers received from web server 108match those detected within sports book 114 by client device 102, clientdevice 102 may determine or verify that the user is actually physicallylocated within sports book 114.

As described herein, in at least some embodiments, this phase of theverification process may also be performed, at least in part, on abackend portion of system 100, such as web server 108, where forexample, web server 108 may receive the beacon identifiers detected byclient device 102 and perform the comparison against beacon identifiersstored by web server 108 and/or database server 110 for beacons 104 a-b.Moreover, as described herein, web server 108 may, in at least someembodiments, communicate with beacons 104 a-b (e.g., via the network) toprovide beacon identifiers for broadcast by each beacon 104 a-b. As aresult, in at least some embodiments, web server 108 may control thebeacon identifiers broadcast by beacons 104 a-b. In other embodiments,beacons 104 a-b may independently generate beacon identifiers, in whichcase, beacons 104 a-b may securely provide beacon identifiers to webserver 108 for comparison against the beacon identifiers detected byclient device 102, as variously described.

In response to verifying, based on the beacon identifiers, that the useris physically located within sports book 114, the mobile app on clientdevice 102 may prompt the user to take a self-photograph, such as usinga camera of client device 102. The user may take one or moreself-photographs, and these may be submitted via the network to webserver 108 (e.g., a registrations API running on web server 108). Inresponse to submission by the user of the one or more self-photographs,web server 108 may provide the registration request initiated by theuser, including the self-photograph, to an image processing systemand/or a back office agent for verification or validation. For example,in at least some embodiments, an agent may receive the registrationrequest, including the identifying and registration information enteredby the user as well as the self-photograph, and the agent may comparethe self-photograph to the photographs of the user's driver's licensethat were also taken by the user. In some embodiments, this process may,as described above, be automated and performed by a computerimplementing image processing and/or machine learning tools. However, ineither case, the agent (or computer system) may approve or deny theregistration request, and the results of the photo verification may beprovided to client device 102 (step 508). In some embodiments, the backoffice agent and/or computer processing the registration request mayreceive a plurality of registration requests, including self-photographsof a plurality of users who have initiated registration requests withina given period of time (e.g., within several minutes of one another),and these may be provided to the back office agent and/or batchprocessed together.

In response to approval or denial of a user's request for registration,the user may be notified, and system 100 may, if the registrationrequest is approved, create a wagering account for the user. In responseto creation of the wagering account, the user may be permitted to loginto the wagering account to begin placing wagers on sporting events. Forinstance, once the user is logged in to a newly created/existingwagering account, and the location of client device 102 is verified asbeing within given sports book 114 and/or in a given gamingjurisdiction, web server 108 may grant the user access to the newlycreated/existing wagering account, whereupon the user may proceed toplace one or more wagers on one or more sporting events in conjunctionwith sports book 114. For example, client device 102 may communicatewith web server 108 to place wagers and receive wager outcomes inassociation with various sporting events. In addition, one or moreawards, such as one or more monetary awards or credits associated withone or more monetary awards, may be provided to the user via clientdevice 102 (e.g., in the instance that the user places a wager on asporting event that is associated with a winning outcome).

Embodiments of the multi-factor location-based device verificationsystem therefore enable, as described above, multi-factor verificationof a physical location of a client device, such as a mobilecommunications device, within a predefined physical location, such as,for example, a casino sports book. In some embodiments, two locationfactors, such as first factor associated with GPS coordinates and asecond factor associated with a wireless beacon, may be used. In otherembodiments, two locations factors, each associated with respectivewireless beacons, may be used. In addition, in some embodiments, a firstfactor associated with GPS coordinates and two location factorsassociated with wireless beacons may be used. Accordingly, in variousembodiments, two-factor as well as three-factor verification processesare described. In some embodiments, four or more factors, such as threelocations factors received from three wireless beacons and a GPScoordinate may be used to determine and/or verify a location of a user.

The system may further permit a user to register for a new wageringaccount. To this end, the system may ensure that the client device isphysically located within the sports book during at least part of theaccount registration process. For example, in some embodiments, thesystem may permit the user to initiate a registration process from anyphysical location, such as any physical location that is within and/orwithout a sports book. However, in at least some embodiments, the systemmay require that the user physically enter a location of a sports bookto complete a new account registration process. The physical location ofthe user within the sports book may be verified based upon a firstlocation or verification factor, such as at least one GPS coordinate,and one or more second and/or third location or verification factors,such as unique identifiers broadcast by and received from one or morewireless beacons disposed within the casino sports book. The system mayfurther register a user to a new wagering account based upon acomparison of a self-photograph of a user of the client device takenfrom the client device to a driver's license photograph.

Exemplary technical effects of the multi-factor location-based deviceverification system described herein include, for example: (a)determination of a client device location based upon a first locationfactor; (b) indication of a predefined location, such as a casino sportsbook, within a predefined distance of the client device; (c)verification of the device location based upon the first locationfactor; (d) determination of the client device location based upon asecond location factor and/or a third location factor broadcast by oneor more wireless beacons disposed within the sports book; (e)verification of the device location based upon the second and/or thirdlocation factors; and (f) creation of a new wagering account based uponthe multi-factor location-based verification and authentication of anidentity of a user of the client device based upon a comparison of aself-photograph taken from the client device to a driver's licensephotograph.

Exemplary embodiments of a multi-factor location-based deviceverification system and related components are described above indetail. The system is not limited to the specific embodiments describedherein, but rather, components of systems and/or steps of the methodsmay be utilized independently and separately from other componentsand/or steps described herein. For example, the configuration ofcomponents described herein may also be used in combination with otherprocesses, and is not limited to practice with the systems and relatedmethods as described herein. Rather, the exemplary embodiment can beimplemented and utilized in connection with many applications wheredevice location verification is desired.

Although specific features of various embodiments of the presentdisclosure may be shown in some drawings and not in others, this is forconvenience only. In accordance with the principles of the presentdisclosure, any feature of a drawing may be referenced and/or claimed incombination with any feature of any other drawing.

This written description uses examples to disclose the embodiments ofthe present disclosure, including the best mode, and also to enable anyperson skilled in the art to practice the disclosure, including makingand using any devices or systems and performing any incorporatedmethods. The patentable scope of the embodiments described herein isdefined by the claims, and may include other examples that occur tothose skilled in the art. Such other examples are intended to be withinthe scope of the claims if they have structural elements that do notdiffer from the literal language of the claims, or if they includeequivalent structural elements with insubstantial differences from theliteral language of the claims.

What is claimed is:
 1. A system for multi-factor location-based deviceverification, the system comprising: a processor; and a non-transitory,tangible, computer-readable storage medium having instructions storedthereon that, in response to execution by the processor, cause theprocessor to perform operations comprising: receiving, from a clientdevice of a user, a request to register for a new wagering account;receiving, from the client device, a first location factor, the firstlocation factor including global positioning system (GPS) data receivedfrom a source device located outside a predefined area, the firstlocation factor being used to provide map directions to the predefined;determining, based at least upon the first location factor, that theclient device is within the predefined area; in response to thedetermining, requesting a user photo taken by the client device;receiving, from the client device, the requested user photo; andcreating, in response to the determining and the user photo, a newwagering account for the user of the client device.
 2. The system ofclaim 1, wherein the first location factor includes at least one GPScoordinate.
 3. The system of claim 1, wherein the instructions furthercause the processor to perform operations comprising: determining thatthe client device is no longer within the predefined area; andpreventing the creation of the new wagering account for the user of theclient device.
 4. The system of claim 3, wherein the determining thatthe client device is no longer within the predefined area occurs priorto receiving the requested user photo.
 5. The system of claim 3, whereinthe determining that the client device is no longer within thepredefined area occurs subsequent to receiving the requested user photo.6. The system of claim 1, wherein the instructions further cause theprocessor to perform operations comprising requesting a plurality ofuser photos to be taken by the client device, wherein the plurality ofuser photos include a photograph of the user's face captured from acamera of the client device and a photograph of a government issuedidentification of the user captured from the camera of the clientdevice, the photograph of the government issued identification includinga government issued identification's photograph.
 7. The system of claim6, and wherein creating the new wagering account further comprises:comparing the photograph of the user's face captured from the camera tothe government issued identification's photograph; and authenticatingthe identity of the user based upon the comparing.
 8. The system ofclaim 1, wherein the instructions further cause the processor to performoperations comprising: receiving, from the client device, a secondlocation factor, the second location factor including informationreceived from a first wireless beacon located within the predefinedarea; receiving, from the client device, a third location factor, thethird location factor including information received from a secondwireless beacon located within the predefined area; and determining,based at least upon the second location factor and the third locationfactor, that the client device is within the predefined area.
 9. Thesystem of claim 8, wherein the second location factor includes a uniqueidentifier associated with the first wireless beacon, and wherein thethird location factor includes a different unique identifier associatedwith the second wireless beacon and wherein the instructions furthercause the processor to perform operations comprising receiving theunique identifier associated with the first wireless beacon and thedifferent unique identifier associated with the second wireless beacon,wherein the unique identifier associated with the first wireless beaconis a randomly generated combination of hexadecimal digits, and whereinthe different unique identifier associated with the second wirelessbeacon is a randomly generated combination of hexadecimal digits. 10.The system of claim 1, wherein the instructions further cause theprocessor to perform operations comprising: receiving, from the clientdevice, at least one wager; determining an outcome based upon the atleast one wager; and providing, based upon the determining, an award tothe user based upon the outcome.
 11. A method for multi-factorlocation-based device verification, the method comprising: receiving, bya processor and from a client device of a user, a request to registerfor a new wagering account; receiving, by the processor and from theclient device, a first location factor, the first location factorincluding global positioning system (GPS) data received from a sourcedevice located outside a predefined area; determining, by the processorand based at least upon the first location factor, that the clientdevice is within the predefined area; in response to the determining,requesting a user photo taken by the client device; receiving, from theclient device, the requested user photo; and creating, by the processorand in response to the determining and the user photo, the new wageringaccount for the user of the client device.
 12. The method of claim 11,wherein the first location factor includes at least one GPS coordinate.13. The method of claim 11 further comprising: determining that theclient device is no longer within the predefined area; and preventingthe creation of the new wagering account for the user of the clientdevice.
 14. The method of claim 13, wherein the determining that theclient device is no longer within the predefined area occurs prior toreceiving the requested user photo.
 15. The method of claim 13, whereinthe determining that the client device is no longer within thepredefined area occurs subsequent to receiving the requested user photo.16. The method of claim 11 further comprising: requesting a plurality ofuser photos to be taken by the client device, wherein the plurality ofuser photos include a photograph of the user's face captured from acamera of the client device and a photograph of a government issuedidentification of the user captured from the camera of the clientdevice, the photograph of the government issued identification includinga government issued identification's photograph; comparing thephotograph of the user's face captured from the camera to the governmentissued identification's photograph; and authenticating the identity ofthe user based upon the comparing.
 17. An article of manufacturecomprising a tangible, non-transitory, computer-readable storage mediumhaving instructions stored thereon, which when executed by a processorfor multi-factor location-based device verification, cause the processorto perform operations comprising: receiving, from a client device of auser, a request to register for a new wagering account; receiving, fromthe client device, a first location factor, the first location factorincluding global positioning system (GPS) data received from a sourcedevice located outside a predefined area; determining, based at leastupon the first location factor, that the client device is within thepredefined area; in response to the determining, requesting a user phototaken by the client device; receiving, from the client device, therequested user photo; and creating, in response to the determining andthe user photo, the new wagering account for the user of the clientdevice.
 18. The article of claim 17, wherein the instructions furthercause the processor to perform operations comprising: determining thatthe client device is no longer within the predefined area; andpreventing the creation of the new wagering account for the user of theclient device.
 19. The article of claim 18, wherein the determining thatthe client device is no longer within the predefined area occurs priorto receiving the requested user photo.
 20. The article of claim 18,wherein the determining that the client device is no longer within thepredefined area occurs subsequent to receiving the requested user photo.